home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-02 / doordr40.zip / DOORDRIV.INT < prev    next >
Text File  |  1991-03-17  |  5KB  |  175 lines

  1. {$IFDEF SMALL}
  2. unit doordrSM;
  3. {$ELSE}
  4. unit doordriv;
  5. {$ENDIF}
  6. {$V-}
  7.  
  8. interface
  9. uses dos, crt, comio, ddscott, ddansi, ddpcb, ddcrc, ddxfer, ddvoc;
  10.  
  11. const
  12.  ack=#6;
  13.  nak=#21;
  14.  sot=#1;
  15.  vocmax: longint = 64000;
  16.  vocfree: longint = 0;
  17. type
  18.  MenuType=Record
  19.            BoxType: byte;
  20.            title: string[32];
  21.            opts: array[1..10] of string[32];
  22.            optdata: array[1..10] of byte;
  23.            Usr11,usr12,usr21,usr22: string[8];
  24.            numdata: array[1..8] of word;
  25.            data: byte;
  26.           end;
  27.  string80=string[80];
  28.  origen_type=(localc,remote);
  29. {$IFNDEF SMALL}
  30.  WindowAr = Array[1..23] of string[78];
  31.  MemoryAr = Array[0..3999] of byte;
  32.  Procptr = pointer;
  33. {$ENDIF}
  34. const
  35. {$IFDEF SMALL}
  36.  version= 'Version 4.00S; 3-15-90';
  37. {$ELSE}
  38.  version= 'Version 4.00; 3-15-90';
  39. {$ENDIF}
  40.  graphics_codes: array[1..4] of string[4] = ('','.ASC','.ANS','.MUS');
  41. var
  42.  lastop: char;
  43.  ddterm: boolean;
  44.  mintime: byte;
  45.  notime: string;
  46.  macro,macro_str: string;
  47.  node_num: byte;
  48.  time_credit: integer;
  49.  char_origen: origen_type;
  50.  fouled_up: char;
  51.  localcol: boolean;
  52.  ansion: boolean;
  53.  time_check: boolean;
  54.  ln: integer;
  55.  morechk: boolean;
  56.  stacked: string;
  57.  current_foreground, current_background: byte;
  58.  promptcol1: byte;
  59.  promptcol2: byte;
  60.  promptcol3: byte;
  61.  color_chg: boolean;
  62.  default_fore, default_back: integer;
  63.  cdropped: boolean;
  64.  progname: string[60];
  65.  bbs_time_left: integer;
  66.  com_port: byte;
  67.  bbs_software: byte;
  68.  baud_rate: integer;
  69.  fground,bground,statfore,statback: byte;
  70.  statline: boolean;
  71.  graphics: integer;
  72.  local: boolean;
  73.  user_access_level: word;
  74.  user_first_name: string[30];
  75.  user_last_name: string[30];
  76.  sysop_first_name: string[30];
  77.  sysop_last_name: string[30];
  78.  board_name: string[70];
  79.  filter : boolean;
  80.  filterck : boolean;
  81.  filterallow : boolean;
  82.  Save_Screen_Chat : boolean;
  83. {$IFNDEF SMALL}
  84.  Proc_Ptr_Ar : array[1..26] of procptr;
  85.  Proc_Call_Ptr : procptr;
  86.  Help_Ar : Array[1..14] of string[80];
  87. {$ENDIF}
  88.  st_hr, st_mn, st_sc, st_sc100: word;
  89.  quiet: boolean;
  90.  regname: string;
  91.  regdata: string;
  92.  color1: boolean;
  93.  line43: boolean;
  94.  Remapfore: array[0..15] of byte;
  95.  remapback: array[0..7] of byte;
  96.  stackon: boolean;
  97.  pbuff: array[1..4096] of char;
  98.  bufferptr: word;
  99.  packetnum: word;
  100.  pkname: string;
  101.  ddtcrc: array[1..255] of longint;
  102.  badchar: string;
  103.  hostname: string[20];
  104.  fossilIO: boolean;
  105.  maxtime: word;
  106.  ConHelpStack: array[1..10] of byte;
  107.  curch: byte;
  108.  curconhelp: word;
  109.  ddtver: word;
  110.  lineon: boolean;
  111.  ddtrel: word;
  112.  numlines: byte;
  113.  oldtextmode: word;
  114.  sbon: boolean;
  115.  sbaddr: word;
  116.  sbint: word;
  117.  lastsetfore: byte;
  118.  setforecheck: boolean;
  119.  
  120. procedure display_macro(s: string);
  121. procedure record_macro(var s: string);
  122. procedure close_async_port;
  123. procedure open_async_port;
  124. function skeypressed: boolean;
  125. procedure sendtext(s: string);
  126. procedure sgoto_xy(x,y: integer);
  127. procedure sclrscr;
  128. procedure swrite(s: string);
  129. procedure swriteln(s: string);
  130. procedure sread_char(var ch: char);
  131. procedure sread(var s: string);
  132. procedure sread_num(var n: integer);
  133. procedure sread_num_word(var n: word);
  134. procedure sread_num_longint(var n: longint);
  135. function time_left: integer;
  136. procedure set_foreground(f: integer);
  137. procedure set_background(b: integer);
  138. procedure set_foreback(fgc,bgc:byte);
  139. procedure prompt(var s: string; le: integer; pc: boolean);
  140. procedure displayfile(filen: string);
  141. {$IFNDEF SMALL}
  142. Procedure GetScreen(Tx,Ty,Bx,By:integer; Var topar : MemoryAr);
  143. Procedure ReinitScreen(Txb,Tyb,Bxb,Byb:integer; Var topar : MemoryAr);
  144. {$ENDIF}
  145. Procedure elapsed(time1_hour, time1_min, time1_sec, time2_hour, time2_min,
  146.                   time2_sec: longint; var elap_hour, elap_min, elap_sec: word);
  147. procedure get_stacked(var s: string);
  148. procedure sread_char_filtered(var ch: char);
  149. procedure display_status;
  150. procedure InitDoorDriver(ConfigFileName: string);
  151.  
  152. procedure PacketStart(num: word);
  153. procedure PacketSend;
  154. procedure DDTermOn;
  155. procedure DDTermOff;
  156. procedure DDTermSendMessage(n: word; s: string);
  157. procedure DDTermSendTime;
  158. procedure DDTermSendFile(fname: string);
  159. function Time_used: integer;
  160. procedure DDTermConHelp(n: word);
  161. procedure DDTermCheckFiles;
  162. procedure DDTermConBack;
  163. procedure DDTermWrite(n: word; s: string);
  164. procedure DDTermWriteln(n: word; s: string);
  165. procedure SendPacketToRemote;
  166. function DDTermMenu(menu: menutype): boolean;
  167. function DDTermProcessOk: boolean;
  168. function DDTermMenuData: byte;
  169. function DDTermMenuNum: byte;
  170. function DDTermMenuNumData(n: byte): word;
  171. procedure DDTermVocPlay(s: string);
  172. procedure DDTermVocReady(s: string);
  173.  
  174. Implementation
  175.